﻿using System.Windows;

namespace Utility3D
{
    public abstract class Stroke : IModelObject
    {
        public IPointRef Start { get; set; }
        public IPointRef End { get; set; }

        public abstract Point? NearestPointOnSurface(DrawingSurface drawingSurface, Point point);
        public abstract IPointRef BreakAtPoint(DrawingSurface drawingSurface, Point point);
        public int Id { get; private set; }
        public Shape Shape { get; set; }
        public StrokeVisibility Visibility { get; set; }
    }
}